The present application relates generally to an improved data processing apparatus and method and more specifically to mechanisms for performing index writing in a linear tape file system.
Linear Tape File System (LTFS) refers to both the format of data recorded on magnetic tape media and the implementation of specific software that uses this data format to provide a file system interface to data stored on magnetic tape. The Linear Tape File System format is a self-describing tape format developed by International Business Machines (IBM) Corporation of Armonk, N.Y. to address tape archive requirements. The LTFS Format specification defines the organization of data and metadata on tape, where the files are stored in a hierarchical directory structure. Data tapes written in the LTFS Format can be used independently of any external database or storage system allowing direct access to file content data and file metadata. This format makes it possible to implement software that presents a standard file system view of the data stored in the tape media. This file system view makes accessing files stored on the LTFS formatted media similar to accessing files stored on other forms of storage media such as disk or removable flash drives.
As mentioned above, in LTFS, in addition to the storing of the content of a file itself into a tape medium, metadata that relates to the file is also stored. This metadata may include data referred to as an index, such as a Universally Unique Identifier (UUID) used for identifying the file, the name of the file, etc., is stored into the tape medium, such as in an Extendible Markup Language (XML) file format. In the existing LTFS Format, it is not permitted to divide an index into a plurality of XML files. The task of storing an index on the tape medium is referred to as a synchronization or “sync” task or operation. A user can select the timing of the execution of the sync operation by configuring the settings at the time of the startup of the LTFS system. Examples of the timing of the execution of a sync operation include periodical execution, execution at the time of the closing of a file, and execution at the time of the unmounting, or dismounting, of a tape medium. “Mounting” a tape medium refers to making the tape medium accessible and providing a group of files in a file system structure of the tape medium accessible to a user or user group. Thus, to unmounts, or dismount, a tape medium is to make the tape medium no longer accessible or the remove the files from access by a user or user group. As part of the unmounting of a tape medium, information is stored to the tape medium for use in accessing the files on the tape medium when the tape medium is again mounted.
In LTFS, to perform the writing and reading of a file on a tape medium, it is necessary to initialize the tape medium by means of the LTFS Format before writing and reading. When the tape medium is initialized in LTFS, the tape medium is divided into two partitions for use. One of the two partitions is referred to as the Index Partition (IP) and the other is referred to as the Data Partition (DP). When a user uses an LTFS system for writing onto the tape medium, in addition to the content of the file itself being written to the DP, pieces of metadata, i.e. the index, is written to the IP. The index can contain information such as the name of the file, the data of the creation of the file, and the like. The latest index for the file is written to the IP whereas the content of the file and the history of the index are written to the DP.